package com.erp.gis.idl;

import java.util.Vector;

import com.paipai.lang.uint16_t;
import com.paipai.lang.uint32_t;
import com.paipai.lang.uint64_t;
import com.paipai.lang.uint8_t;
import com.paipai.util.annotation.ApiProtocol;
import com.paipai.util.annotation.Field;
import com.paipai.util.annotation.HeadApiProtocol;
import com.paipai.util.annotation.Member;

@HeadApiProtocol(cPlusNamespace = "erp::gis::ao", needInit = true, needReset = true)
public class GisManageAo {
    @Member(desc = "配送区域轨迹PO", cPlusNamespace = "erp::gis::po", isNeedUFlag = true, isNeedTempVersion = true)
    public class ShipTypeAreaLocusPo {
        @Field(desc = " 版本号 ", defaultValue = "0")
        uint16_t version;
        uint8_t version_u;
		
		@Field(desc = "记录序号，ERP：gis系统同步数据时使用，区分不同记录")
        uint32_t recordSysNo;
        uint8_t recordSysNo_u;
		
		@Field(desc = "配送方式 ")
        uint32_t shipType;
        uint8_t shipType_u;
		
		@Field(desc = "分站号 ")
        uint32_t branchSysNo;
        uint8_t branchSysNo_u;

        @Field(desc = "配送轨迹所属的国标城市地域ID或者省ID")
        uint32_t shipTypeLocusGbAreaid;
        uint8_t shipTypeLocusGbAreaid_u;

        @Field(desc = "配送方式覆盖轨迹，轨迹数据组织形式如：x1,y1,x2,y2,x3,y3 ")
        String shipTypeCoverLocus;
        uint8_t shipTypeCoverLocus_u;
        
        @Field(desc = " 状态，0：有效，1：无效 ")
        uint32_t status;
        uint8_t status_u;
				
		@Field(desc = " 创建时间")
        uint64_t createTime;
        uint8_t createTime_u;
		
		@Field(desc = " 最近修改时间")
        uint64_t lastModifyTime;
        uint8_t lastModifyTime_u;
		
		@Field(desc = " 预留扩展字段")
        String reserve;
        uint8_t reserve_u;
    }
   
    @ApiProtocol(cmdid = "0xc0231001L", desc = "同步配送区域轨迹记录 ")
	class ShipTypeAreaLocusRowSync {
		@ApiProtocol(cmdid = "0xc0231001L", desc = "同步配送区域轨迹记录请求类 ")
		class Req {
			@Field(desc = "机器码，必填，对应网站cookie中的visitkey，若无则填随机值")
			String machineKey;

			@Field(desc = "调用来源文件名称，必填")
			String source;

			@Field(desc = "场景id，必填（目前填0即可）")
			uint32_t sceneId;

			@Field(desc = "配送区域轨迹PO")
			ShipTypeAreaLocusPo shipTypeAreaLocusPo;

			@Field(desc = "请求保留字段")
			String inReserve;
		}

		@ApiProtocol(cmdid = "0xc0238001L", desc = "同步配送区域轨迹记录返回类 ")
		class Resp {			
			@Field(desc = "错误信息")
			String errMsg;

			@Field(desc = "请求保留字段")
			String outReserve;
		}
    }

}
